package com.netposa.datawarehouse.component.entity;

public class BodyFeature
{
    private String recordId;
    private Long absTime;
    private String deviceId;
    private String location;
    private String traitLocation;
    private Integer height;
    private Integer color;
    private Integer gray;
    private Integer headColor;
    private Integer footColor;
    private Integer gender;
    private Integer upperType;
    private Double upperTypeConfidence;
    private Integer upperColor;
    private Double upperColorConfidence;
    private Integer upperPattern;
    private Double upperPatternConfidence;
    private Integer hat;
    private Double hatConfidence;
    private Integer lowerType;
    private Double lowerTypeConfidence;
    private Integer lowerColor;
    private Double lowerColorConfidence;
    private Integer lowerPattern;
    private Double lowerPatternConfidence;
    private Integer bagType;
    private Double bagTypeConfidence;
    private Integer bagColor;
    private Double bagColorConfidence;
    private Integer bagPattern;
    private Double bagPatternConfidence;
    private Long saveTime;
    private String task_type;
    private String info_source;
    private String collection_id;
    private String additional_info;
    private Integer moveDirection;
    private Integer moveSpeed;
    private Integer nation;
    private Integer ageSegment;
    private Integer headMarker;
    private Integer hairStyle;
    private Integer bodyAppendage;
    private Integer shoesColor;
    private Integer shoesStyle;
    private Integer source;
    
    public BodyFeature() {
        this.height = -1;
        this.color = -1;
        this.gray = -1;
        this.headColor = -1;
        this.footColor = -1;
        this.gender = -1;
        this.upperType = -1;
        this.upperTypeConfidence = -1.0;
        this.upperColor = -1;
        this.upperColorConfidence = -1.0;
        this.upperPattern = -1;
        this.upperPatternConfidence = -1.0;
        this.hat = -1;
        this.hatConfidence = -1.0;
        this.lowerType = -1;
        this.lowerTypeConfidence = -1.0;
        this.lowerColor = -1;
        this.lowerColorConfidence = -1.0;
        this.lowerPattern = -1;
        this.lowerPatternConfidence = -1.0;
        this.bagType = -1;
        this.bagTypeConfidence = -1.0;
        this.bagColor = -1;
        this.bagColorConfidence = -1.0;
        this.bagPattern = -1;
        this.bagPatternConfidence = -1.0;
        this.saveTime = System.currentTimeMillis();
        this.moveDirection = -1;
        this.moveSpeed = -1;
        this.nation = -1;
        this.ageSegment = -1;
        this.headMarker = -1;
        this.hairStyle = -1;
        this.bodyAppendage = -1;
        this.shoesColor = -1;
        this.shoesStyle = -1;
    }
    
    public String getRecordId() {
        return this.recordId;
    }
    
    public Long getAbsTime() {
        return this.absTime;
    }
    
    public String getDeviceId() {
        return this.deviceId;
    }
    
    public String getLocation() {
        return this.location;
    }
    
    public String getTraitLocation() {
        return this.traitLocation;
    }
    
    public Integer getHeight() {
        return this.height;
    }
    
    public Integer getColor() {
        return this.color;
    }
    
    public Integer getGray() {
        return this.gray;
    }
    
    public Integer getHeadColor() {
        return this.headColor;
    }
    
    public Integer getFootColor() {
        return this.footColor;
    }
    
    public Integer getGender() {
        return this.gender;
    }
    
    public Integer getUpperType() {
        return this.upperType;
    }
    
    public Double getUpperTypeConfidence() {
        return this.upperTypeConfidence;
    }
    
    public Integer getUpperColor() {
        return this.upperColor;
    }
    
    public Double getUpperColorConfidence() {
        return this.upperColorConfidence;
    }
    
    public Integer getUpperPattern() {
        return this.upperPattern;
    }
    
    public Double getUpperPatternConfidence() {
        return this.upperPatternConfidence;
    }
    
    public Integer getHat() {
        return this.hat;
    }
    
    public Double getHatConfidence() {
        return this.hatConfidence;
    }
    
    public Integer getLowerType() {
        return this.lowerType;
    }
    
    public Double getLowerTypeConfidence() {
        return this.lowerTypeConfidence;
    }
    
    public Integer getLowerColor() {
        return this.lowerColor;
    }
    
    public Double getLowerColorConfidence() {
        return this.lowerColorConfidence;
    }
    
    public Integer getLowerPattern() {
        return this.lowerPattern;
    }
    
    public Double getLowerPatternConfidence() {
        return this.lowerPatternConfidence;
    }
    
    public Integer getBagType() {
        return this.bagType;
    }
    
    public Double getBagTypeConfidence() {
        return this.bagTypeConfidence;
    }
    
    public Integer getBagColor() {
        return this.bagColor;
    }
    
    public Double getBagColorConfidence() {
        return this.bagColorConfidence;
    }
    
    public Integer getBagPattern() {
        return this.bagPattern;
    }
    
    public Double getBagPatternConfidence() {
        return this.bagPatternConfidence;
    }
    
    public Long getSaveTime() {
        return this.saveTime;
    }
    
    public String getTask_type() {
        return this.task_type;
    }
    
    public String getInfo_source() {
        return this.info_source;
    }
    
    public String getCollection_id() {
        return this.collection_id;
    }
    
    public String getAdditional_info() {
        return this.additional_info;
    }
    
    public Integer getMoveDirection() {
        return this.moveDirection;
    }
    
    public Integer getMoveSpeed() {
        return this.moveSpeed;
    }
    
    public Integer getNation() {
        return this.nation;
    }
    
    public Integer getAgeSegment() {
        return this.ageSegment;
    }
    
    public Integer getHeadMarker() {
        return this.headMarker;
    }
    
    public Integer getHairStyle() {
        return this.hairStyle;
    }
    
    public Integer getBodyAppendage() {
        return this.bodyAppendage;
    }
    
    public Integer getShoesColor() {
        return this.shoesColor;
    }
    
    public Integer getShoesStyle() {
        return this.shoesStyle;
    }
    
    public Integer getSource() {
        return this.source;
    }
    
    public void setRecordId(final String recordId) {
        this.recordId = recordId;
    }
    
    public void setAbsTime(final Long absTime) {
        this.absTime = absTime;
    }
    
    public void setDeviceId(final String deviceId) {
        this.deviceId = deviceId;
    }
    
    public void setLocation(final String location) {
        this.location = location;
    }
    
    public void setTraitLocation(final String traitLocation) {
        this.traitLocation = traitLocation;
    }
    
    public void setHeight(final Integer height) {
        this.height = height;
    }
    
    public void setColor(final Integer color) {
        this.color = color;
    }
    
    public void setGray(final Integer gray) {
        this.gray = gray;
    }
    
    public void setHeadColor(final Integer headColor) {
        this.headColor = headColor;
    }
    
    public void setFootColor(final Integer footColor) {
        this.footColor = footColor;
    }
    
    public void setGender(final Integer gender) {
        this.gender = gender;
    }
    
    public void setUpperType(final Integer upperType) {
        this.upperType = upperType;
    }
    
    public void setUpperTypeConfidence(final Double upperTypeConfidence) {
        this.upperTypeConfidence = upperTypeConfidence;
    }
    
    public void setUpperColor(final Integer upperColor) {
        this.upperColor = upperColor;
    }
    
    public void setUpperColorConfidence(final Double upperColorConfidence) {
        this.upperColorConfidence = upperColorConfidence;
    }
    
    public void setUpperPattern(final Integer upperPattern) {
        this.upperPattern = upperPattern;
    }
    
    public void setUpperPatternConfidence(final Double upperPatternConfidence) {
        this.upperPatternConfidence = upperPatternConfidence;
    }
    
    public void setHat(final Integer hat) {
        this.hat = hat;
    }
    
    public void setHatConfidence(final Double hatConfidence) {
        this.hatConfidence = hatConfidence;
    }
    
    public void setLowerType(final Integer lowerType) {
        this.lowerType = lowerType;
    }
    
    public void setLowerTypeConfidence(final Double lowerTypeConfidence) {
        this.lowerTypeConfidence = lowerTypeConfidence;
    }
    
    public void setLowerColor(final Integer lowerColor) {
        this.lowerColor = lowerColor;
    }
    
    public void setLowerColorConfidence(final Double lowerColorConfidence) {
        this.lowerColorConfidence = lowerColorConfidence;
    }
    
    public void setLowerPattern(final Integer lowerPattern) {
        this.lowerPattern = lowerPattern;
    }
    
    public void setLowerPatternConfidence(final Double lowerPatternConfidence) {
        this.lowerPatternConfidence = lowerPatternConfidence;
    }
    
    public void setBagType(final Integer bagType) {
        this.bagType = bagType;
    }
    
    public void setBagTypeConfidence(final Double bagTypeConfidence) {
        this.bagTypeConfidence = bagTypeConfidence;
    }
    
    public void setBagColor(final Integer bagColor) {
        this.bagColor = bagColor;
    }
    
    public void setBagColorConfidence(final Double bagColorConfidence) {
        this.bagColorConfidence = bagColorConfidence;
    }
    
    public void setBagPattern(final Integer bagPattern) {
        this.bagPattern = bagPattern;
    }
    
    public void setBagPatternConfidence(final Double bagPatternConfidence) {
        this.bagPatternConfidence = bagPatternConfidence;
    }
    
    public void setSaveTime(final Long saveTime) {
        this.saveTime = saveTime;
    }
    
    public void setTask_type(final String task_type) {
        this.task_type = task_type;
    }
    
    public void setInfo_source(final String info_source) {
        this.info_source = info_source;
    }
    
    public void setCollection_id(final String collection_id) {
        this.collection_id = collection_id;
    }
    
    public void setAdditional_info(final String additional_info) {
        this.additional_info = additional_info;
    }
    
    public void setMoveDirection(final Integer moveDirection) {
        this.moveDirection = moveDirection;
    }
    
    public void setMoveSpeed(final Integer moveSpeed) {
        this.moveSpeed = moveSpeed;
    }
    
    public void setNation(final Integer nation) {
        this.nation = nation;
    }
    
    public void setAgeSegment(final Integer ageSegment) {
        this.ageSegment = ageSegment;
    }
    
    public void setHeadMarker(final Integer headMarker) {
        this.headMarker = headMarker;
    }
    
    public void setHairStyle(final Integer hairStyle) {
        this.hairStyle = hairStyle;
    }
    
    public void setBodyAppendage(final Integer bodyAppendage) {
        this.bodyAppendage = bodyAppendage;
    }
    
    public void setShoesColor(final Integer shoesColor) {
        this.shoesColor = shoesColor;
    }
    
    public void setShoesStyle(final Integer shoesStyle) {
        this.shoesStyle = shoesStyle;
    }
    
    public void setSource(final Integer source) {
        this.source = source;
    }
    
    @Override
    public boolean equals(final Object o) {
        if (o == this) {
            return true;
        }
        if (!(o instanceof BodyFeature)) {
            return false;
        }
        final BodyFeature other = (BodyFeature)o;
        if (!other.canEqual(this)) {
            return false;
        }
        final Object this$recordId = this.getRecordId();
        final Object other$recordId = other.getRecordId();
        Label_0065: {
            if (this$recordId == null) {
                if (other$recordId == null) {
                    break Label_0065;
                }
            }
            else if (this$recordId.equals(other$recordId)) {
                break Label_0065;
            }
            return false;
        }
        final Object this$absTime = this.getAbsTime();
        final Object other$absTime = other.getAbsTime();
        Label_0102: {
            if (this$absTime == null) {
                if (other$absTime == null) {
                    break Label_0102;
                }
            }
            else if (this$absTime.equals(other$absTime)) {
                break Label_0102;
            }
            return false;
        }
        final Object this$deviceId = this.getDeviceId();
        final Object other$deviceId = other.getDeviceId();
        Label_0139: {
            if (this$deviceId == null) {
                if (other$deviceId == null) {
                    break Label_0139;
                }
            }
            else if (this$deviceId.equals(other$deviceId)) {
                break Label_0139;
            }
            return false;
        }
        final Object this$location = this.getLocation();
        final Object other$location = other.getLocation();
        Label_0176: {
            if (this$location == null) {
                if (other$location == null) {
                    break Label_0176;
                }
            }
            else if (this$location.equals(other$location)) {
                break Label_0176;
            }
            return false;
        }
        final Object this$traitLocation = this.getTraitLocation();
        final Object other$traitLocation = other.getTraitLocation();
        Label_0213: {
            if (this$traitLocation == null) {
                if (other$traitLocation == null) {
                    break Label_0213;
                }
            }
            else if (this$traitLocation.equals(other$traitLocation)) {
                break Label_0213;
            }
            return false;
        }
        final Object this$height = this.getHeight();
        final Object other$height = other.getHeight();
        Label_0250: {
            if (this$height == null) {
                if (other$height == null) {
                    break Label_0250;
                }
            }
            else if (this$height.equals(other$height)) {
                break Label_0250;
            }
            return false;
        }
        final Object this$color = this.getColor();
        final Object other$color = other.getColor();
        Label_0287: {
            if (this$color == null) {
                if (other$color == null) {
                    break Label_0287;
                }
            }
            else if (this$color.equals(other$color)) {
                break Label_0287;
            }
            return false;
        }
        final Object this$gray = this.getGray();
        final Object other$gray = other.getGray();
        Label_0324: {
            if (this$gray == null) {
                if (other$gray == null) {
                    break Label_0324;
                }
            }
            else if (this$gray.equals(other$gray)) {
                break Label_0324;
            }
            return false;
        }
        final Object this$headColor = this.getHeadColor();
        final Object other$headColor = other.getHeadColor();
        Label_0361: {
            if (this$headColor == null) {
                if (other$headColor == null) {
                    break Label_0361;
                }
            }
            else if (this$headColor.equals(other$headColor)) {
                break Label_0361;
            }
            return false;
        }
        final Object this$footColor = this.getFootColor();
        final Object other$footColor = other.getFootColor();
        Label_0398: {
            if (this$footColor == null) {
                if (other$footColor == null) {
                    break Label_0398;
                }
            }
            else if (this$footColor.equals(other$footColor)) {
                break Label_0398;
            }
            return false;
        }
        final Object this$gender = this.getGender();
        final Object other$gender = other.getGender();
        Label_0435: {
            if (this$gender == null) {
                if (other$gender == null) {
                    break Label_0435;
                }
            }
            else if (this$gender.equals(other$gender)) {
                break Label_0435;
            }
            return false;
        }
        final Object this$upperType = this.getUpperType();
        final Object other$upperType = other.getUpperType();
        Label_0472: {
            if (this$upperType == null) {
                if (other$upperType == null) {
                    break Label_0472;
                }
            }
            else if (this$upperType.equals(other$upperType)) {
                break Label_0472;
            }
            return false;
        }
        final Object this$upperTypeConfidence = this.getUpperTypeConfidence();
        final Object other$upperTypeConfidence = other.getUpperTypeConfidence();
        Label_0509: {
            if (this$upperTypeConfidence == null) {
                if (other$upperTypeConfidence == null) {
                    break Label_0509;
                }
            }
            else if (this$upperTypeConfidence.equals(other$upperTypeConfidence)) {
                break Label_0509;
            }
            return false;
        }
        final Object this$upperColor = this.getUpperColor();
        final Object other$upperColor = other.getUpperColor();
        Label_0546: {
            if (this$upperColor == null) {
                if (other$upperColor == null) {
                    break Label_0546;
                }
            }
            else if (this$upperColor.equals(other$upperColor)) {
                break Label_0546;
            }
            return false;
        }
        final Object this$upperColorConfidence = this.getUpperColorConfidence();
        final Object other$upperColorConfidence = other.getUpperColorConfidence();
        Label_0583: {
            if (this$upperColorConfidence == null) {
                if (other$upperColorConfidence == null) {
                    break Label_0583;
                }
            }
            else if (this$upperColorConfidence.equals(other$upperColorConfidence)) {
                break Label_0583;
            }
            return false;
        }
        final Object this$upperPattern = this.getUpperPattern();
        final Object other$upperPattern = other.getUpperPattern();
        Label_0620: {
            if (this$upperPattern == null) {
                if (other$upperPattern == null) {
                    break Label_0620;
                }
            }
            else if (this$upperPattern.equals(other$upperPattern)) {
                break Label_0620;
            }
            return false;
        }
        final Object this$upperPatternConfidence = this.getUpperPatternConfidence();
        final Object other$upperPatternConfidence = other.getUpperPatternConfidence();
        Label_0657: {
            if (this$upperPatternConfidence == null) {
                if (other$upperPatternConfidence == null) {
                    break Label_0657;
                }
            }
            else if (this$upperPatternConfidence.equals(other$upperPatternConfidence)) {
                break Label_0657;
            }
            return false;
        }
        final Object this$hat = this.getHat();
        final Object other$hat = other.getHat();
        Label_0694: {
            if (this$hat == null) {
                if (other$hat == null) {
                    break Label_0694;
                }
            }
            else if (this$hat.equals(other$hat)) {
                break Label_0694;
            }
            return false;
        }
        final Object this$hatConfidence = this.getHatConfidence();
        final Object other$hatConfidence = other.getHatConfidence();
        Label_0731: {
            if (this$hatConfidence == null) {
                if (other$hatConfidence == null) {
                    break Label_0731;
                }
            }
            else if (this$hatConfidence.equals(other$hatConfidence)) {
                break Label_0731;
            }
            return false;
        }
        final Object this$lowerType = this.getLowerType();
        final Object other$lowerType = other.getLowerType();
        Label_0768: {
            if (this$lowerType == null) {
                if (other$lowerType == null) {
                    break Label_0768;
                }
            }
            else if (this$lowerType.equals(other$lowerType)) {
                break Label_0768;
            }
            return false;
        }
        final Object this$lowerTypeConfidence = this.getLowerTypeConfidence();
        final Object other$lowerTypeConfidence = other.getLowerTypeConfidence();
        Label_0805: {
            if (this$lowerTypeConfidence == null) {
                if (other$lowerTypeConfidence == null) {
                    break Label_0805;
                }
            }
            else if (this$lowerTypeConfidence.equals(other$lowerTypeConfidence)) {
                break Label_0805;
            }
            return false;
        }
        final Object this$lowerColor = this.getLowerColor();
        final Object other$lowerColor = other.getLowerColor();
        Label_0842: {
            if (this$lowerColor == null) {
                if (other$lowerColor == null) {
                    break Label_0842;
                }
            }
            else if (this$lowerColor.equals(other$lowerColor)) {
                break Label_0842;
            }
            return false;
        }
        final Object this$lowerColorConfidence = this.getLowerColorConfidence();
        final Object other$lowerColorConfidence = other.getLowerColorConfidence();
        Label_0879: {
            if (this$lowerColorConfidence == null) {
                if (other$lowerColorConfidence == null) {
                    break Label_0879;
                }
            }
            else if (this$lowerColorConfidence.equals(other$lowerColorConfidence)) {
                break Label_0879;
            }
            return false;
        }
        final Object this$lowerPattern = this.getLowerPattern();
        final Object other$lowerPattern = other.getLowerPattern();
        Label_0916: {
            if (this$lowerPattern == null) {
                if (other$lowerPattern == null) {
                    break Label_0916;
                }
            }
            else if (this$lowerPattern.equals(other$lowerPattern)) {
                break Label_0916;
            }
            return false;
        }
        final Object this$lowerPatternConfidence = this.getLowerPatternConfidence();
        final Object other$lowerPatternConfidence = other.getLowerPatternConfidence();
        Label_0953: {
            if (this$lowerPatternConfidence == null) {
                if (other$lowerPatternConfidence == null) {
                    break Label_0953;
                }
            }
            else if (this$lowerPatternConfidence.equals(other$lowerPatternConfidence)) {
                break Label_0953;
            }
            return false;
        }
        final Object this$bagType = this.getBagType();
        final Object other$bagType = other.getBagType();
        Label_0990: {
            if (this$bagType == null) {
                if (other$bagType == null) {
                    break Label_0990;
                }
            }
            else if (this$bagType.equals(other$bagType)) {
                break Label_0990;
            }
            return false;
        }
        final Object this$bagTypeConfidence = this.getBagTypeConfidence();
        final Object other$bagTypeConfidence = other.getBagTypeConfidence();
        Label_1027: {
            if (this$bagTypeConfidence == null) {
                if (other$bagTypeConfidence == null) {
                    break Label_1027;
                }
            }
            else if (this$bagTypeConfidence.equals(other$bagTypeConfidence)) {
                break Label_1027;
            }
            return false;
        }
        final Object this$bagColor = this.getBagColor();
        final Object other$bagColor = other.getBagColor();
        Label_1064: {
            if (this$bagColor == null) {
                if (other$bagColor == null) {
                    break Label_1064;
                }
            }
            else if (this$bagColor.equals(other$bagColor)) {
                break Label_1064;
            }
            return false;
        }
        final Object this$bagColorConfidence = this.getBagColorConfidence();
        final Object other$bagColorConfidence = other.getBagColorConfidence();
        Label_1101: {
            if (this$bagColorConfidence == null) {
                if (other$bagColorConfidence == null) {
                    break Label_1101;
                }
            }
            else if (this$bagColorConfidence.equals(other$bagColorConfidence)) {
                break Label_1101;
            }
            return false;
        }
        final Object this$bagPattern = this.getBagPattern();
        final Object other$bagPattern = other.getBagPattern();
        Label_1138: {
            if (this$bagPattern == null) {
                if (other$bagPattern == null) {
                    break Label_1138;
                }
            }
            else if (this$bagPattern.equals(other$bagPattern)) {
                break Label_1138;
            }
            return false;
        }
        final Object this$bagPatternConfidence = this.getBagPatternConfidence();
        final Object other$bagPatternConfidence = other.getBagPatternConfidence();
        Label_1175: {
            if (this$bagPatternConfidence == null) {
                if (other$bagPatternConfidence == null) {
                    break Label_1175;
                }
            }
            else if (this$bagPatternConfidence.equals(other$bagPatternConfidence)) {
                break Label_1175;
            }
            return false;
        }
        final Object this$saveTime = this.getSaveTime();
        final Object other$saveTime = other.getSaveTime();
        Label_1212: {
            if (this$saveTime == null) {
                if (other$saveTime == null) {
                    break Label_1212;
                }
            }
            else if (this$saveTime.equals(other$saveTime)) {
                break Label_1212;
            }
            return false;
        }
        final Object this$task_type = this.getTask_type();
        final Object other$task_type = other.getTask_type();
        Label_1249: {
            if (this$task_type == null) {
                if (other$task_type == null) {
                    break Label_1249;
                }
            }
            else if (this$task_type.equals(other$task_type)) {
                break Label_1249;
            }
            return false;
        }
        final Object this$info_source = this.getInfo_source();
        final Object other$info_source = other.getInfo_source();
        Label_1286: {
            if (this$info_source == null) {
                if (other$info_source == null) {
                    break Label_1286;
                }
            }
            else if (this$info_source.equals(other$info_source)) {
                break Label_1286;
            }
            return false;
        }
        final Object this$collection_id = this.getCollection_id();
        final Object other$collection_id = other.getCollection_id();
        Label_1323: {
            if (this$collection_id == null) {
                if (other$collection_id == null) {
                    break Label_1323;
                }
            }
            else if (this$collection_id.equals(other$collection_id)) {
                break Label_1323;
            }
            return false;
        }
        final Object this$additional_info = this.getAdditional_info();
        final Object other$additional_info = other.getAdditional_info();
        Label_1360: {
            if (this$additional_info == null) {
                if (other$additional_info == null) {
                    break Label_1360;
                }
            }
            else if (this$additional_info.equals(other$additional_info)) {
                break Label_1360;
            }
            return false;
        }
        final Object this$moveDirection = this.getMoveDirection();
        final Object other$moveDirection = other.getMoveDirection();
        Label_1397: {
            if (this$moveDirection == null) {
                if (other$moveDirection == null) {
                    break Label_1397;
                }
            }
            else if (this$moveDirection.equals(other$moveDirection)) {
                break Label_1397;
            }
            return false;
        }
        final Object this$moveSpeed = this.getMoveSpeed();
        final Object other$moveSpeed = other.getMoveSpeed();
        Label_1434: {
            if (this$moveSpeed == null) {
                if (other$moveSpeed == null) {
                    break Label_1434;
                }
            }
            else if (this$moveSpeed.equals(other$moveSpeed)) {
                break Label_1434;
            }
            return false;
        }
        final Object this$nation = this.getNation();
        final Object other$nation = other.getNation();
        Label_1471: {
            if (this$nation == null) {
                if (other$nation == null) {
                    break Label_1471;
                }
            }
            else if (this$nation.equals(other$nation)) {
                break Label_1471;
            }
            return false;
        }
        final Object this$ageSegment = this.getAgeSegment();
        final Object other$ageSegment = other.getAgeSegment();
        Label_1508: {
            if (this$ageSegment == null) {
                if (other$ageSegment == null) {
                    break Label_1508;
                }
            }
            else if (this$ageSegment.equals(other$ageSegment)) {
                break Label_1508;
            }
            return false;
        }
        final Object this$headMarker = this.getHeadMarker();
        final Object other$headMarker = other.getHeadMarker();
        Label_1545: {
            if (this$headMarker == null) {
                if (other$headMarker == null) {
                    break Label_1545;
                }
            }
            else if (this$headMarker.equals(other$headMarker)) {
                break Label_1545;
            }
            return false;
        }
        final Object this$hairStyle = this.getHairStyle();
        final Object other$hairStyle = other.getHairStyle();
        Label_1582: {
            if (this$hairStyle == null) {
                if (other$hairStyle == null) {
                    break Label_1582;
                }
            }
            else if (this$hairStyle.equals(other$hairStyle)) {
                break Label_1582;
            }
            return false;
        }
        final Object this$bodyAppendage = this.getBodyAppendage();
        final Object other$bodyAppendage = other.getBodyAppendage();
        Label_1619: {
            if (this$bodyAppendage == null) {
                if (other$bodyAppendage == null) {
                    break Label_1619;
                }
            }
            else if (this$bodyAppendage.equals(other$bodyAppendage)) {
                break Label_1619;
            }
            return false;
        }
        final Object this$shoesColor = this.getShoesColor();
        final Object other$shoesColor = other.getShoesColor();
        Label_1656: {
            if (this$shoesColor == null) {
                if (other$shoesColor == null) {
                    break Label_1656;
                }
            }
            else if (this$shoesColor.equals(other$shoesColor)) {
                break Label_1656;
            }
            return false;
        }
        final Object this$shoesStyle = this.getShoesStyle();
        final Object other$shoesStyle = other.getShoesStyle();
        Label_1693: {
            if (this$shoesStyle == null) {
                if (other$shoesStyle == null) {
                    break Label_1693;
                }
            }
            else if (this$shoesStyle.equals(other$shoesStyle)) {
                break Label_1693;
            }
            return false;
        }
        final Object this$source = this.getSource();
        final Object other$source = other.getSource();
        if (this$source == null) {
            if (other$source == null) {
                return true;
            }
        }
        else if (this$source.equals(other$source)) {
            return true;
        }
        return false;
    }
    
    protected boolean canEqual(final Object other) {
        return other instanceof BodyFeature;
    }
    
    @Override
    public int hashCode() {
        final int PRIME = 59;
        int result = 1;
        final Object $recordId = this.getRecordId();
        result = result * 59 + (($recordId == null) ? 43 : $recordId.hashCode());
        final Object $absTime = this.getAbsTime();
        result = result * 59 + (($absTime == null) ? 43 : $absTime.hashCode());
        final Object $deviceId = this.getDeviceId();
        result = result * 59 + (($deviceId == null) ? 43 : $deviceId.hashCode());
        final Object $location = this.getLocation();
        result = result * 59 + (($location == null) ? 43 : $location.hashCode());
        final Object $traitLocation = this.getTraitLocation();
        result = result * 59 + (($traitLocation == null) ? 43 : $traitLocation.hashCode());
        final Object $height = this.getHeight();
        result = result * 59 + (($height == null) ? 43 : $height.hashCode());
        final Object $color = this.getColor();
        result = result * 59 + (($color == null) ? 43 : $color.hashCode());
        final Object $gray = this.getGray();
        result = result * 59 + (($gray == null) ? 43 : $gray.hashCode());
        final Object $headColor = this.getHeadColor();
        result = result * 59 + (($headColor == null) ? 43 : $headColor.hashCode());
        final Object $footColor = this.getFootColor();
        result = result * 59 + (($footColor == null) ? 43 : $footColor.hashCode());
        final Object $gender = this.getGender();
        result = result * 59 + (($gender == null) ? 43 : $gender.hashCode());
        final Object $upperType = this.getUpperType();
        result = result * 59 + (($upperType == null) ? 43 : $upperType.hashCode());
        final Object $upperTypeConfidence = this.getUpperTypeConfidence();
        result = result * 59 + (($upperTypeConfidence == null) ? 43 : $upperTypeConfidence.hashCode());
        final Object $upperColor = this.getUpperColor();
        result = result * 59 + (($upperColor == null) ? 43 : $upperColor.hashCode());
        final Object $upperColorConfidence = this.getUpperColorConfidence();
        result = result * 59 + (($upperColorConfidence == null) ? 43 : $upperColorConfidence.hashCode());
        final Object $upperPattern = this.getUpperPattern();
        result = result * 59 + (($upperPattern == null) ? 43 : $upperPattern.hashCode());
        final Object $upperPatternConfidence = this.getUpperPatternConfidence();
        result = result * 59 + (($upperPatternConfidence == null) ? 43 : $upperPatternConfidence.hashCode());
        final Object $hat = this.getHat();
        result = result * 59 + (($hat == null) ? 43 : $hat.hashCode());
        final Object $hatConfidence = this.getHatConfidence();
        result = result * 59 + (($hatConfidence == null) ? 43 : $hatConfidence.hashCode());
        final Object $lowerType = this.getLowerType();
        result = result * 59 + (($lowerType == null) ? 43 : $lowerType.hashCode());
        final Object $lowerTypeConfidence = this.getLowerTypeConfidence();
        result = result * 59 + (($lowerTypeConfidence == null) ? 43 : $lowerTypeConfidence.hashCode());
        final Object $lowerColor = this.getLowerColor();
        result = result * 59 + (($lowerColor == null) ? 43 : $lowerColor.hashCode());
        final Object $lowerColorConfidence = this.getLowerColorConfidence();
        result = result * 59 + (($lowerColorConfidence == null) ? 43 : $lowerColorConfidence.hashCode());
        final Object $lowerPattern = this.getLowerPattern();
        result = result * 59 + (($lowerPattern == null) ? 43 : $lowerPattern.hashCode());
        final Object $lowerPatternConfidence = this.getLowerPatternConfidence();
        result = result * 59 + (($lowerPatternConfidence == null) ? 43 : $lowerPatternConfidence.hashCode());
        final Object $bagType = this.getBagType();
        result = result * 59 + (($bagType == null) ? 43 : $bagType.hashCode());
        final Object $bagTypeConfidence = this.getBagTypeConfidence();
        result = result * 59 + (($bagTypeConfidence == null) ? 43 : $bagTypeConfidence.hashCode());
        final Object $bagColor = this.getBagColor();
        result = result * 59 + (($bagColor == null) ? 43 : $bagColor.hashCode());
        final Object $bagColorConfidence = this.getBagColorConfidence();
        result = result * 59 + (($bagColorConfidence == null) ? 43 : $bagColorConfidence.hashCode());
        final Object $bagPattern = this.getBagPattern();
        result = result * 59 + (($bagPattern == null) ? 43 : $bagPattern.hashCode());
        final Object $bagPatternConfidence = this.getBagPatternConfidence();
        result = result * 59 + (($bagPatternConfidence == null) ? 43 : $bagPatternConfidence.hashCode());
        final Object $saveTime = this.getSaveTime();
        result = result * 59 + (($saveTime == null) ? 43 : $saveTime.hashCode());
        final Object $task_type = this.getTask_type();
        result = result * 59 + (($task_type == null) ? 43 : $task_type.hashCode());
        final Object $info_source = this.getInfo_source();
        result = result * 59 + (($info_source == null) ? 43 : $info_source.hashCode());
        final Object $collection_id = this.getCollection_id();
        result = result * 59 + (($collection_id == null) ? 43 : $collection_id.hashCode());
        final Object $additional_info = this.getAdditional_info();
        result = result * 59 + (($additional_info == null) ? 43 : $additional_info.hashCode());
        final Object $moveDirection = this.getMoveDirection();
        result = result * 59 + (($moveDirection == null) ? 43 : $moveDirection.hashCode());
        final Object $moveSpeed = this.getMoveSpeed();
        result = result * 59 + (($moveSpeed == null) ? 43 : $moveSpeed.hashCode());
        final Object $nation = this.getNation();
        result = result * 59 + (($nation == null) ? 43 : $nation.hashCode());
        final Object $ageSegment = this.getAgeSegment();
        result = result * 59 + (($ageSegment == null) ? 43 : $ageSegment.hashCode());
        final Object $headMarker = this.getHeadMarker();
        result = result * 59 + (($headMarker == null) ? 43 : $headMarker.hashCode());
        final Object $hairStyle = this.getHairStyle();
        result = result * 59 + (($hairStyle == null) ? 43 : $hairStyle.hashCode());
        final Object $bodyAppendage = this.getBodyAppendage();
        result = result * 59 + (($bodyAppendage == null) ? 43 : $bodyAppendage.hashCode());
        final Object $shoesColor = this.getShoesColor();
        result = result * 59 + (($shoesColor == null) ? 43 : $shoesColor.hashCode());
        final Object $shoesStyle = this.getShoesStyle();
        result = result * 59 + (($shoesStyle == null) ? 43 : $shoesStyle.hashCode());
        final Object $source = this.getSource();
        result = result * 59 + (($source == null) ? 43 : $source.hashCode());
        return result;
    }
    
    @Override
    public String toString() {
        return "BodyFeature(recordId=" + this.getRecordId() + ", absTime=" + this.getAbsTime() + ", deviceId=" + this.getDeviceId() + ", location=" + this.getLocation() + ", traitLocation=" + this.getTraitLocation() + ", height=" + this.getHeight() + ", color=" + this.getColor() + ", gray=" + this.getGray() + ", headColor=" + this.getHeadColor() + ", footColor=" + this.getFootColor() + ", gender=" + this.getGender() + ", upperType=" + this.getUpperType() + ", upperTypeConfidence=" + this.getUpperTypeConfidence() + ", upperColor=" + this.getUpperColor() + ", upperColorConfidence=" + this.getUpperColorConfidence() + ", upperPattern=" + this.getUpperPattern() + ", upperPatternConfidence=" + this.getUpperPatternConfidence() + ", hat=" + this.getHat() + ", hatConfidence=" + this.getHatConfidence() + ", lowerType=" + this.getLowerType() + ", lowerTypeConfidence=" + this.getLowerTypeConfidence() + ", lowerColor=" + this.getLowerColor() + ", lowerColorConfidence=" + this.getLowerColorConfidence() + ", lowerPattern=" + this.getLowerPattern() + ", lowerPatternConfidence=" + this.getLowerPatternConfidence() + ", bagType=" + this.getBagType() + ", bagTypeConfidence=" + this.getBagTypeConfidence() + ", bagColor=" + this.getBagColor() + ", bagColorConfidence=" + this.getBagColorConfidence() + ", bagPattern=" + this.getBagPattern() + ", bagPatternConfidence=" + this.getBagPatternConfidence() + ", saveTime=" + this.getSaveTime() + ", task_type=" + this.getTask_type() + ", info_source=" + this.getInfo_source() + ", collection_id=" + this.getCollection_id() + ", additional_info=" + this.getAdditional_info() + ", moveDirection=" + this.getMoveDirection() + ", moveSpeed=" + this.getMoveSpeed() + ", nation=" + this.getNation() + ", ageSegment=" + this.getAgeSegment() + ", headMarker=" + this.getHeadMarker() + ", hairStyle=" + this.getHairStyle() + ", bodyAppendage=" + this.getBodyAppendage() + ", shoesColor=" + this.getShoesColor() + ", shoesStyle=" + this.getShoesStyle() + ", source=" + this.getSource() + ")";
    }
}
